// 测试过滤器

const path = require('path');
const template = require('art-template');
const dateformat = require('dateformat');

// 使用 template 注册过滤器
// template.defaults.imports.名称 = 值 ;
template.defaults.imports.micros = function(millis) {
    let microseconds = BigInt(millis) * BigInt(1000);
    console.log('microseconds: ', microseconds);
    return microseconds.toString();
};

template.defaults.imports.format = function(micros, pattern) {
    console.log('dateFormat', micros, pattern);

    let millis = BigInt(micros) / BigInt(1000);
    console.log(millis, typeof(millis));

    millis = millis.toString();
    console.log(millis, typeof(millis));
    millis = Number(millis.toString());
    console.log(millis, typeof(millis));

    //通过 millis new一个实例
    let date = new Date(millis);

    // 这里借助于 第三方模块 dateformat(date实例，格式) 完成日期格式化操作
    let str = dateformat(date, pattern);
    return str;
};

// 指定 模板文件所在的"根目录" (即在哪个目录中寻找模板文件)
template.defaults.root = path.join(__dirname, '../assets/templates');
// 指定 模板文件的后缀
template.defaults.extname = '.art';

let basename = 'filter'; // 指定模板文件的基本名称

let data = {
    now: Date.now()
}

let html = template(basename, data);
console.log(html);